Tags HTML ordenadas alfabéticamente
Importante: Clique na tag que é um link que te explicará como ela funciona.
Tag Descrição
<!--...--> Define um comentário (*1)
<!DOCTYPE>  Define o tipo de documento (*1)
<a> Define um hiperlink (*1)
<abbr> Define uma abreviatura ou acrônimo
<acronym> Não compatível com HTML5. Usar <abbr> em vez de.
Define um acrônimo ou Sigla
<address> Define as informações de contato do autor / proprietário de um documento
<applet> Não compatível com HTML5. Usar <embed> ou <object> em vez de.
Define uma aplicação(applet) embutida(embedded)
<area> Define uma área dentro de um mapa de imagem
<article> Define um artigo
<aside> Define o conteúdo a parte do conteúdo da página
<audio> Define o conteúdo de som
<b> Define o texto em negrito (*1)
<base> Especifica o URL base / alvo para todos os URLs relativos em um documento
<basefont> Tag para formatação de texto - Não compatível com HTML5. Usar CSS em vez de.
Especifica uma cor, tamanho e fonte padrão para todo o texto em um documento
<bdi> Isola uma parte do texto que pode ser formatada em uma direção diferente de outro texto fora dele
<bdo> Substitui a direção do texto atual (da esquerda para a direita e vice-versa)
<big> Tag para formatação de texto - Não compatível com HTML5. Usar CSS em vez de.
Define texto grande
<blockquote> Define uma seção que é citada de outra fonte
<body> Define o corpo (body) do documento. O Corpo do documento é onde todos os elementos da página são exibidos. (*1)
<br> Define uma única quebra de linha (*1)
<button> Define um botão clicável para o usuário. Ao clicar um evento é disparado e um processo pode ser iniciado como enviar as informações ao servidor. (*1)
<canvas> Usado para desenhar gráficos, dinamicamente, por meio de scripts (geralmente JavaScript)
<caption> Define a legenda da tabela (*2)
<center>
Não compatível com HTML5. Usar CSS em vez de.
Centraliza o elemento na tela Horizontalmente - Texto, imagens etc.
Vou ser sincero com vocês, ainda uso esta tag pela sua versatilidade.
<cite> Define o título de uma obra
<code> Tag para formatação de texto - Define um trecho de texto como se fosse um código de computador
<col> Especifica as propriedades da coluna para cada coluna dentro de um <colgroup> elemento 
<colgroup> Especifica um grupo de uma ou mais colunas em uma tabela para formatação
<colspan> Mesclagem das colunas de uma tabela.
Usada quando queremos que uma coluna ocupe o espaço de uma segunda coluna seguinte ou mais. (*1)
<data> Vincula o conteúdo fornecido a uma tradução legível por máquina
<datalist> Especifica uma lista de opções predefinidas para controles de entrada
<dd> Define uma descrição / valor de um termo em uma lista de descrição.
Trabalha em conjunto com as tags dl, dt e dd e possuem uma hierarquia para utilização destas tags.
<del> Define o texto que foi excluído de um documento
<details> Define detalhes adicionais que o usuário pode visualizar ou ocultar
<dfn> Representa a instância definidora de um termo
<dialog> Define uma caixa de diálogo ou janela
<dir> Tag para formatação de texto - Não compatível com HTML5. Usar <ul> em vez de.
Define uma lista de itens.
<div> Define uma seção ou divisão em um documento. (*1)
Muito útil para separar ou agrupar elementos da página.
<dl> Define uma lista de descrição
<dt> Define um termo / nome em uma lista de descrição
<em> Tag para formatação de texto - Define o texto enfatizado. (*2)
<embed> Define um contêiner para um aplicativo externo (não HTML) com o Flash Player, o Quick Time, etc.
Como chamar uma aplicação local pela web é uma falha de segurança (isolamento) hoje em dia a maioria dos embed não funcionam mais porque as pessoas deixaram de usar e o html5 faz essas tarefas nativamente.
<fieldset> Agrupa elementos relacionados em um formulário (*1) dando um visual interessante e destacado dos itens relacionados (veja legenda no rodapé da página).
<figcaption> Define uma legenda para um elemento <figure>
<figure> Especifica o conteúdo independente
<font> Tag para formatação de texto - Não compatível com HTML5. Usar CSS em vez de.
Define a fonte de letras, cor e tamanho do texto. Muito usada no passado. Era uma das tags mais utilizadas em html4 mas no 5 foi substituída pela CSS com muito mais recursos.
<footer> Define um rodapé para um documento ou seção
<form> Define um formulário HTML para entrada de dados do usuário(digitação). (*2)
Nesta tag podemos inserir elementos (como a tag input type text) e todos os dados poderão ser enviados ao servidor através desta tag.
<frame> Não compatível com HTML5.
Define uma janela dentro do documento atual para outro documento.
Ao abrir o browser um site de segurança pode identificar o site que está sendo aberto mas se existe outro site sendo aberto dentro de um frame isso é uma falha de segurança porque não dá pra saber antes de carregar e uma vez carregado já é tarde. Por ser uma falha de segurança impossível de corrigir este recurso foi retirado.
<frameset> Não compatível com HTML5.
Trabalha em conjunto com a tag frame e define um conjunto de frames.
<h1> to <h6> Define cabeçalhos HTML (h1=maior, h6=menor) como o cabeçalho de uma notícia num jornal (*1).
<head> Define informações sobre o documento que o instruem o browser como processar a página. (*1)
<header> Define um cabeçalho para um documento ou seção
<hgroup> Agrupador das tags de cabeçalho H1 a H6.
Nem todos os browsers aceitam esta tag.
<hr> Desenha uma linha separadora horizontal (Horizontal Rule)
Define uma mudança temática no conteúdo (*1).
<html> Define a raiz de um documento HTML (*1)
<i> Define um texto em itálico ou
Define uma parte do texto diferenciada do restante do texto.
<iframe> Define um quadro embutido. Como a tag frame foi banida do HTML5 por ser insegura a tag iframe segue o mesmo caminho.
<img> Define / Inclui uma imagem no documento html. (*1)
<input> Define um controle de entrada onde o usuário pode digitar dados para futuramente serem enviados ao servidor. Clique neste controle caso queira ver os todos os inputs como checkbox, color, Data, DateTime-Local, Email, File, Hidden(Escondido), Image, month, Number(Número), Password(Senha), Radio, Range, Reset, Search (Procurar, Pesquisar), Submit ( Enviar ao servidor ), tel (telefone), Text, Time, URL, Week (semana) (*1)
<ins> Documenta que o texto dentro desta tag foi inserido recentemente ou atualizado.
<kbd> Tag para formatação de texto - Define o formato do texto como se fosse um campo texto formatado como se fosse a entrada do teclado ou mesmo como se fossem teclas. Horrível...esqueçe ela.
<label> Define uma mensagem para um elemento descrevendo sua utilidade. Muito útil na tag <input> onde ela indica o que deve ser digitado na caixa de texto. (*1)
<legend> Define uma legenda para um elemento <fieldset>
<li> Define um item da lista ordenada( ol) ou não (ul).
Trabalha em conjunto com as tags ol e ul (*1).
<link> Define a relação entre um documento e um recurso externo como na vinculação com a folhas de estilo ou páginas javascript externas. Não confundir com a tag <a> (*1).
<main> Especifica o conteúdo principal de um documento
<map> Define um mapa de imagem do lado do cliente
<mark> Define o texto marcado / destacado
<menu> Define um menu no documento. Esta tag ainda não funciona no Chrome.
Clique neste item para ver a tag menuitem.
<meta> Define metadados (informações que definem como a página deve ser processada ) sobre um documento HTML como o utf-8 (*1)
<meter> Define uma medida escalar dentro de um intervalo conhecido (um medidor)
<nav> Define links de navegação. Muito boa para fazer menus e ruim porque ocupa a linha inteira.
<noframes> Não compatível com HTML5.
Define um conteúdo alternativo para usuários quando o browser não suporta frames.
<noscript> Define um conteúdo alternativo para usuários que não oferecem suporte scripts do lado do cliente. Brontossaúrica.
<object> Define um objeto embutido(embedded) (*2)
<ol> Define uma lista ordenada (numerada) (*1)
<optgroup> Define um grupo de opções relacionadas em uma lista suspensa(select) (*1)
<option> Define uma opção em uma lista suspensa (select) (*1)
<output> Define o resultado de um cálculo. Brontossáurica.
<p> Define um parágrafo (*1)
<param> Define um parâmetro para um objeto. Boa para enviar infos dentro da tag. (*2)
<picture> Define um contêiner para vários recursos de imagem
<pre> Define o texto pré-formatado.Brontossáurica.
<progress> Exibe uma barra de progresso de uma tarefa(ProgressBar) indicando seu andamento e projetando o tempo de finalização.
<q> Define uma cotação curta
<rowspan> Mesclagem de linhas de uma tabela.
Utilizada quando queremos que a linha corrente da tabela tabém ocupe o espaço da linha seguinte e, opcionalmente, das demais a seguir. (*1)
<rp> Define o que mostrar em navegadores que não suportam anotações Ruby.
Esta tag é usada para idiomas estrangeiros como as do leste asiático.
Clique aqui para ver as tags associadas a tag Ruby : rt e rp.
<rt> Define uma explicação / pronúncia dos caracteres (para o Leste Asiático tipografia)
<ruby> Define uma anotação em rubi (para tipografia do Leste Asiático)
<s> Define o texto que não está mais correto, ou seja, consta para informar que em versões antigas do documento ele constava mas foi removido por algum motivo.
<samp> Tag para formatação de texto - Define o texto como se fosse a saída de amostra de um programa de computador.
<script> Define um script do lado do cliente (*1).
<section> Define uma seção em um documento
<select> Define uma lista suspensa (*1)
<small> Define um texto menor. Usar a CSS ao invés desta tag.
<source> Define vários recursos de mídia para o elemento de mídias (<video> e <audio>)
<span> Define uma seção em um documento (*1).
<strike> Tag para formatação de texto - Não compatível com HTML5. Usar <del> ou <s> em vez de.
Define o texto tachado
<strong> Tag para formatação de texto - Define um texto destacado dos demais, um texto importante por isso é exibido normalmente em negrito.
Negrito raramente não é notado pelo usuário. Usar a CSS ao invés desta tag.
<style> Define informações de estilo para um documento. Esta tag pode formatar a exibição de qualquer elemento HTML da página. (*1)
<sub> Define o texto subscrito. Muito usado em matemática ou química.
<summary> Define um resumo, uma súmula para um elemento detalhe(<details>)
<sup> Define o texto sobrescrito.Muito usado em matemática ou química
<svg> Define um contêiner para gráficos SVG (*2)
<table> Define uma tabela. Já foi o principal elemento de formatação da web 1.0 (*1)
<tbody> Agrupa o conteúdo do corpo em uma tabela
<td> Define uma célula/coluna em uma tabela (*1)
<template> Define um modelo
<textarea> Define uma tag input type text com multiplas linhas (uma área de texto). Fundamental para inclusão de textos longos como relatos de acontecimentos. (*1)
<tfoot> Agrupa o conteúdo do rodapé em uma tabela
<th> Define uma célula de cabeçalho em uma tabela (*1)
<thead> Agrupa as colunas do cabeçalho em uma tabela
<time> Define uma data / hora
<title> Define o título para o documento HTML que será escrito junto a url da página. (*1)
<tr> Define uma linha em uma tabela (*1)
<track> Define faixas de texto para elementos de mídia (<video> e <audio>)
<tt> Tag para formatação de texto - Não compatível com HTML5. Usar CSS em vez de.
Define o texto do teletipo
<u> Sublinha o texto destacando-o do texto comum. (*1)
<ul> Define uma lista não ordenada(Unordered) (*1)
<var> Tag para formatação de texto - Define que o formato do texto seja um formato variável, diferente do normal.
<video> Define um vídeo ou filme
<wbr> Define um ponto bom para quebra de linha



Legendas Tag HTML4 descontinuada no HTML5
Tag Nova do HTML5
Futura-Ainda não implementada em alguns browsers.
A tag foi removida do HTML5 não sendo mais suportada.
(*1) - Conhecimento obrigatório.
(*2) - Recomenda-se conhecer como usar.